1. Field of the Invention
The present invention relates to techniques for communicating signals between electronic circuits. More specifically, the present invention relates to circuits and methods for asynchronous communication using pulse signals.
2. Related Art
Two common signaling techniques in asynchronous circuit design are “transition signaling” and “level signaling.” In transition signaling, primitive components communicate using voltage transitions. During a given communications cycle, a 2-phase protocol is utilized, in which one phase is the request phase and the other phase is the acknowledge phase. Examples of primitive components used in transition signaling include the Merge element, the Muller C-element, and the Decision-Wait element.
In level signaling, primitive components communicate using voltage levels. During a given communications cycle, a 4-phase protocol is utilized, including a first request and acknowledge phase for the rising transitions and then another request and acknowledge phase for the falling transitions. Thus, after the fourth phase the primitive components return to their initial state. As a consequence, level signaling is also referred to as return-to-zero signaling and transition signaling is called non-return-to-zero signaling. Typically, the use of level signaling results in simpler circuits at the cost of four phases per communications cycle, while transition signaling only has two phases per communication cycle at the cost of more complex circuits.
Recently, pulse-mode circuits, such as asynchronous symmetric pulse protocol (GasP), asynchronous pulse logic (APL), and single-track full-buffer (STFB), have been proposed. In these circuit families, components are connected using tri-state wires. In the floating state, these tri-state wires weakly maintain their state with keepers. However, such tri-state wires are susceptible to noise, in particular via capacitive coupling on the wires. Often these noise-sensitive wires are also driven by a single pull-down or pull-up stack of transistors that have smaller noise margins than static gates.
Therefore, implementations that utilize existing asynchronous signaling techniques often involve considerable circuit area, power consumption, and expense. Hence, what is needed is a method and an apparatus that facilitates asynchronous signaling without the problems listed above.